#pragma once

#include <string>


namespace evm {

using namespace std;

/* Class representing info for specified interface. */
struct If {
    /* Construct by interface name. */
    If(string name);

    /* Return whether contains complete interface info. */
    operator bool() {
        return complete_;
    }

    /* Log for debugging. */
    void log();

    string name;
    string addr;
    string broad_addr;
    string netmask;
    string mac;
    int flags;
    int metric;
    int mtu;
    int index;

private:
    bool complete_{};
};

}
